package com.itfreer.xjmh.security.entity;

import java.io.Serializable;

import com.itfreer.bpm.model.BpmBaseEntity;
import com.itfreer.form.api.reflect.DictionaryField;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Transient;

/**
 * 定义安保设备实体
 */
@Entity(name = "t_security_equipment")
public class SecurityEquipmentEntity extends BpmBaseEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 主键
	 */
	@Id
	@Column(name = "id", length = 50, nullable = false)
	private String id;
	
	/**
	 * 设备类型---字典
	 */
	@Column(name = "equipment_type", length = 50, nullable = true)
	@DictionaryField(dictionaryName = "e_type", toFieldName = "equipmentTypeName")
	private String equipmentType;

	@Transient
	private String equipmentTypeName;
	
	/**
	 * 设备型号---字典
	 */
	@Column(name = "equipment_model", length = 50, nullable = true)
	@DictionaryField(dictionaryName = "e_model", toFieldName = "equipmentModelName")
	private String equipmentModel;

	@Transient
	private String equipmentModelName;
	
	/**
	 * 生产厂家---字典
	 */
	@Column(name = "produce_factory", length = 50, nullable = true)
	@DictionaryField(dictionaryName = "e_produce_factory", toFieldName = "produceFactoryName")
	private String produceFactory;

	@Transient
	private String produceFactoryName;
	
	/**
	 * 设备序列号
	 */
	@Column(name = "equipment_serial", length = 255, nullable = true)
	private String equipmentSerial;
	
	
	/**
	 * 出厂年
	 */
	@Column(name = "out_year", length = 50, nullable = true)
	private String outYear;
	
	
	/**
	 * 出厂月
	 */
	@Column(name = "out_month", length = 50, nullable = true)
	private String outMonth;
	
	
	/**
	 * 启用年
	 */
	@Column(name = "use_year", length = 50, nullable = true)
	private String useYear;
	
	
	/**
	 * 启用月
	 */
	@Column(name = "use_month", length = 50, nullable = true)
	private String useMonth;
	
	
	/**
	 * 安装用途
	 */
	@Column(name = "position", length = 255, nullable = true)
	@DictionaryField(dictionaryName = "e_position", toFieldName = "positionName")
	private String position;
	@Transient
	private String positionName;
	
	/**
	 * 使用单位---对应所属机场字典
	 */
	@Column(name = "use_unit", length = 50, nullable = true)
	@DictionaryField(dictionaryName = "zd_airport", toFieldName = "useUnitName")
	private String useUnit;

	@Transient
	private String useUnitName;

	/**
	 * 使用机场---对应所属机场字典
	 */
	@Column(name = "airport", length = 50, nullable = true)
	@DictionaryField(dictionaryName = "zd_airport", toFieldName = "airportName")
	private String airport;

	@Transient
	private String airportName;
	
	/**
	 * 所属监管局---字典？
	 */
	@Column(name = "regulatory_authority", length = 50, nullable = true)
	@DictionaryField(dictionaryName = "e_regulatory_authority", toFieldName = "regulatoryAuthorityName")
	private String regulatoryAuthority;

	@Transient
	private String regulatoryAuthorityName;
	
	
	/**
	 * 所属管理局---字典？
	 */
	@Column(name = "administration", length = 50, nullable = true)
	@DictionaryField(dictionaryName = "e_administration", toFieldName = "administrationName")
	private String administration;

	@Transient
	private String administrationName;
	
	/**
	 * 备注：型号
	 */
	@Column(name = "remark_model", length = 500, nullable = true)
	private String remarkModel;
	
	
	/**
	 * 备注：生产厂家
	 */
	@Column(name = "remark_factory", length = 500, nullable = true)
	private String remarkFactory;
	
	

	/**
	 * 流程实例ID
	 */
	@Column(name = "s_exeid", length = 50, nullable = true)
	private String exeid;

	/**
	 * 流程状态
	 */
	@Column(name = "s_bpmState", length = 50, nullable = true)
	private String bpmState;

	/**
	 * 租户ID
	 */
	@Column(name = "s_tenantID", length = 50, nullable = true)
	private String tenantID;

	/**
	 * 租户名称
	 */
	@Column(name = "s_tenantName", length = 50, nullable = true)
	private String tenantName;




	/**
	 * 主键
	 */
	@Override
	public String getId() {
		return id;
	}

	/**
	 * 主键
	 */
	@Override
	public void setId(String value) {
		this.id = value;
	}
	
	
	/**
	 * 设备类型---字典
	 */
	public String getEquipmentType() {
		return equipmentType;
	}

	/**
	 * 设备类型---字典
	 */
	public void setEquipmentType(String value) {
		this.equipmentType = value;
	}
	
	
	/**
	 * 设备型号---字典
	 */
	public String getEquipmentModel() {
		return equipmentModel;
	}

	/**
	 * 设备型号---字典
	 */
	public void setEquipmentModel(String value) {
		this.equipmentModel = value;
	}
	
	
	/**
	 * 生产厂家---字典
	 */
	public String getProduceFactory() {
		return produceFactory;
	}

	/**
	 * 生产厂家---字典
	 */
	public void setProduceFactory(String value) {
		this.produceFactory = value;
	}
	
	
	/**
	 * 设备序列号
	 */
	public String getEquipmentSerial() {
		return equipmentSerial;
	}

	/**
	 * 设备序列号
	 */
	public void setEquipmentSerial(String value) {
		this.equipmentSerial = value;
	}
	
	
	/**
	 * 出厂年
	 */
	public String getOutYear() {
		return outYear;
	}

	/**
	 * 出厂年
	 */
	public void setOutYear(String value) {
		this.outYear = value;
	}
	
	
	/**
	 * 出厂月
	 */
	public String getOutMonth() {
		return outMonth;
	}

	/**
	 * 出厂月
	 */
	public void setOutMonth(String value) {
		this.outMonth = value;
	}
	
	
	/**
	 * 启用年
	 */
	public String getUseYear() {
		return useYear;
	}

	/**
	 * 启用年
	 */
	public void setUseYear(String value) {
		this.useYear = value;
	}
	
	
	/**
	 * 启用月
	 */
	public String getUseMonth() {
		return useMonth;
	}

	/**
	 * 启用月
	 */
	public void setUseMonth(String value) {
		this.useMonth = value;
	}
	
	
	/**
	 * 安装位置
	 */
	public String getPosition() {
		return position;
	}

	/**
	 * 安装位置
	 */
	public void setPosition(String value) {
		this.position = value;
	}
	
	
	/**
	 * 使用单位---单位外键？
	 */
	public String getUseUnit() {
		return useUnit;
	}

	/**
	 * 使用单位---单位外键？
	 */
	public void setUseUnit(String value) {
		this.useUnit = value;
	}


	
	/**
	 * 所属监管局---字典？
	 */
	public String getRegulatoryAuthority() {
		return regulatoryAuthority;
	}

	/**
	 * 所属监管局---字典？
	 */
	public void setRegulatoryAuthority(String value) {
		this.regulatoryAuthority = value;
	}
	
	
	/**
	 * 所属管理局---字典？
	 */
	public String getAdministration() {
		return administration;
	}

	/**
	 * 所属管理局---字典？
	 */
	public void setAdministration(String value) {
		this.administration = value;
	}
	
	
	/**
	 * 备注：型号
	 */
	public String getRemarkModel() {
		return remarkModel;
	}

	/**
	 * 备注：型号
	 */
	public void setRemarkModel(String value) {
		this.remarkModel = value;
	}
	
	
	/**
	 * 备注：生产厂家
	 */
	public String getRemarkFactory() {
		return remarkFactory;
	}

	/**
	 * 备注：生产厂家
	 */
	public void setRemarkFactory(String value) {
		this.remarkFactory = value;
	}

	public String getEquipmentTypeName() {
		return equipmentTypeName;
	}

	public void setEquipmentTypeName(String equipmentTypeName) {
		this.equipmentTypeName = equipmentTypeName;
	}

	public String getEquipmentModelName() {
		return equipmentModelName;
	}

	public void setEquipmentModelName(String equipmentModelName) {
		this.equipmentModelName = equipmentModelName;
	}

	public String getProduceFactoryName() {
		return produceFactoryName;
	}

	public void setProduceFactoryName(String produceFactoryName) {
		this.produceFactoryName = produceFactoryName;
	}

	public String getPositionName() {
		return positionName;
	}

	public void setPositionName(String positionName) {
		this.positionName = positionName;
	}

	public String getUseUnitName() {
		return useUnitName;
	}

	public void setUseUnitName(String useUnitName) {
		this.useUnitName = useUnitName;
	}

	public String getAirport() {
		return airport;
	}

	public void setAirport(String airport) {
		this.airport = airport;
	}

	public String getAirportName() {
		return airportName;
	}

	public void setAirportName(String airportName) {
		this.airportName = airportName;
	}

	public String getRegulatoryAuthorityName() {
		return regulatoryAuthorityName;
	}

	public void setRegulatoryAuthorityName(String regulatoryAuthorityName) {
		this.regulatoryAuthorityName = regulatoryAuthorityName;
	}

	public String getAdministrationName() {
		return administrationName;
	}

	public void setAdministrationName(String administrationName) {
		this.administrationName = administrationName;
	}

	@Override
	@Transient
	public String getProName() {
		// TODO 根据实际情况调整
		return "安保设备审批";
	}

	@Override
	public String getBpmState() {
		return bpmState;
	}

	@Override
	public void setBpmState(String arg0) {
		bpmState = arg0;
	}

	@Override
	public String getExeid() {
		return exeid;
	}

	@Override
	public void setExeid(String arg0) {
		exeid = arg0;
	}
	
	/**
	 * 租户ID
	 */
	@Override
	public String getTenantID() {
		return tenantID;
	}
	
	/**
	 * 租户ID
	 */
	@Override
	public void setTenantID(String tenantID) {
		this.tenantID = tenantID;
	}

	/**
	 * 租户名称
	 */
	@Override
	public String getTenantName() {
		return tenantName;
	}
	
	/**
	 * 租户名称
	 */
	@Override
	public void setTenantName(String tenantName) {
		this.tenantName = tenantName;
	}



}
